home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 41 / Amiga Format CD41 (1999-06)(Future Publishing)(GB)[!][issue 1999-07].iso / -seriously_amiga- / programming / other / gui4cli / dir / dir.rep (.txt) < prev    next >
PC-File  |  1999-04-29  |  3KB  |  115 lines

  1. G4C   
  2. ; Dir.rep - GUI for the c:Rep replace command.
  3. ; ----------------- The window
  4. WinBig -1 -1 400 100 'Replace in selected files'
  5. WinType 11110001
  6. varpath dir.gc
  7. BOX    0 0 0 0 OUT ICONDROP
  8. ; ----------------- General events
  9. xOnLoad
  10. rp_from  = ""
  11. rp_to    = ""
  12. rp_savemode = OVER
  13. rp_ci = ""
  14. guiopen Dir.rep
  15. RUN 'resident guis:c/Rep pure add'
  16. xOnReload
  17. guiopen dir.rep
  18. xOnClose
  19. delvar rp_#?
  20. guiquit Dir.rep
  21. run 'resident Rep remove'
  22. ; ---------------- text-in gadgets for entering..
  23. xTextIn   80 5  310 18 'Replace:' rp_from "" 200    ; string to Rep
  24. gadid 1
  25. setgad dir.rep 2 on   ; activate next textin
  26. xTextIn   80 25 310 18 'With:' rp_to "" 200        ; Rep with this
  27. gadid 2
  28. ; ---------------- Do we want to add extensions to the files ?
  29. xCycler  10 45 190 14 "" rp_savemode
  30. gadid 3
  31. cstr 'OVERWRITE Files'    OVER
  32. cstr 'Add .rep extension' EXT
  33. ; ---------------- case insensitive search ?
  34. xCycler  200 45 190 14 "" rp_ci
  35. gadid 6
  36. cstr 'Case Sensitive'    ""
  37. cstr 'Case Insensitive'  I
  38. ; ---------------- A text display, telling you what's going on.
  39. TEXT 15 65 50 14 Status: 20 NOBOX
  40. TEXT 80 65 310 14 Waiting.. 100 BOX
  41. gadid 4
  42. ; ---------------- Start converting..
  43. xButton 210 80 90 14 Start
  44. gadid 5
  45. lvmulti first
  46. if $lv_file = ""
  47.    ezreq "No files selected!" OK ''
  48.    stop
  49. endif
  50. if $$LV_TYPE != FILE
  51.    ezreq 'Directories can not\nbe converted!\n\nTry again..\n' OK ""
  52.    stop 
  53. endif
  54. if $rp_from = ""
  55.    ezreq 'No "Replace:" defined!' OK ""
  56.    stop
  57. endif
  58. rp_flag = 0
  59. rp_destfile = ""
  60. if $rp_savemode = EXT
  61.    extract lv_file UNQUOTE rp_fname
  62.    appvar  rp_fname .rep
  63.    rp_destfile = \"$rp_fname\"
  64. endif
  65. gosub dir.rep disable
  66. update Dir.rep 4 'REP: $lv_file'
  67. set deeptrans off
  68. launch 5 'Rep $lv_file \"$rp_from\" \"$rp_to\" $rp_destfile $rp_ci'
  69. set deeptrans on
  70. ; Use of the launch command will allow the other GUIs running on
  71. ; this instance of Gui4Cli to go about their business normally
  72. xOnReturn 5
  73. update Dir.rep 4 'Finished.'
  74. lvmulti OFF            ; set selection off
  75. if $rp_flag != 0          ; check abort flag
  76.    rp_flag = 0            ; reset for next time
  77.    gosub dir.rep enable
  78.    stop
  79. endif
  80. lvmulti next            ; get next file
  81. if $lv_file = ""        ; no more files
  82.    lvdir refresh
  83.    gosub dir.rep enable
  84.    stop
  85. endif
  86. if $rp_savemode = EXT
  87.    extract lv_file UNQUOTE rp_fname
  88.    appvar  rp_fname .rep
  89.    rp_destfile = \"$rp_fname\"
  90. endif
  91. update Dir.rep 4 'REP: $lv_file'
  92. set deeptrans off
  93. launch 5 'Rep $lv_file \"$rp_from\" \"$rp_to\" $rp_destfile $rp_ci'
  94. set deeptrans on
  95. ; --------------- Cancel the rest of the files chosen.
  96. xButton 300 80 90 14 Stop
  97. setvar rp_flag 1
  98. ; --------------- Routines to disables & enable guis
  99. xRoutine disable
  100. guiwindow dir.gc wait
  101. setgad dir.rep 1 off
  102. setgad dir.rep 2 off
  103. setgad dir.rep 3 off
  104. setgad dir.rep 5 off
  105. setgad dir.rep 6 off
  106. xRoutine enable
  107. guiwindow dir.gc resume
  108. setgad dir.rep 1 on
  109. setgad dir.rep 2 on
  110. setgad dir.rep 3 on
  111. setgad dir.rep 5 on
  112. setgad dir.rep 6 on
  113. xOnFail
  114. gosub dir.rep enable
  115.